热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

倍数|时针_CSS32D/3D转换手把手教你

篇首语:本文由编程笔记#小编为大家整理,主要介绍了CSS32D/3D转换手把手教你相关的知识,希望对你有一定的参考价值。2D/3D转换CSS

篇首语:本文由编程笔记#小编为大家整理,主要介绍了CSS3 2D/3D转换手把手教你相关的知识,希望对你有一定的参考价值。



2D/3D转换

CSS 转换(transforms)允许您移动、旋转、缩放和倾斜元素。


2D转换

主要通过transform 属性,该属性使用函数来定义的。

包含以下方法


1.位移


  • translate():translate(x)接受一个参数表示沿x轴位移x像素,沿y轴默认为0,接受两个参数translate(x,y)表示沿x轴位移的距离和沿y轴位移的距离
  • 分开写法translateX(x) 、translateY(y)
  • 数值可以为正负

例子:





效果:


2.旋转


  • **rotate(angle)😗*只有一个参数,表示选择的角度,单位用deg(度)
  • 2d空间只能围绕元素中心的z轴旋转
  • 参数为值则时针旋转,为值则时针旋转

例如:





效果:


3.缩放


  • scale(): 一个参数的时候表示同时在x轴和y轴两个方向缩放相同的倍数,两个参数表示分别xy轴方向缩放相应的倍数

例子:





效果:


4.变形


  • **skew():**表示沿x轴变形x角度,y轴默认为0,两个参数表示沿x轴变形x的角度,沿y轴变形y的角度。单位为deg(度)
  • 分开写法:skewX(), skewY()

例子:





效果:


5.matrix()

matrix 方法有六个参数,包含旋转,缩放,移动(平移)和倾斜功能。

可以说是前面的合写

参数如下:

matrix(scaleX(),skewY(),skewX(),scaleY(),translateX(),translateY())

6.转换中心

通过该属性transform-origin可以改变 旋转、缩放、变形的原点。默认为center,可以设置为关键字:top bottom center left right,也可以使用pxem百分比值位置的。

例如:把转换中心改为由左上角。然后选择90度

.item:active
transform-origin: left top;
transform: rotate(90deg);

效果:


3D转换

既然是3D,我们就知道肯定是一个立体的,那么就有了空间感觉。既有了x轴、y轴、z轴。

下表列出了所有 3D 变换属性:


属性描述
transform向元素应用 2D 或 3D 转换。
transform-origin允许你改变被转换元素的位置。
transform-style规定被嵌套元素如何在 3D 空间中显示。
perspective规定 3D 元素的透视效果。
perspective-origin规定 3D 元素的底部位置。
backface-visibility定义元素在不面对屏幕时是否可见。

CSS 3D 转换方法


函数描述
matrix3d(n,n,n,n,n,n, n,n,n,n,n,n,n,n,n,n)定义 3D 转换,使用 16 个值的 4x4 矩阵。
translate3d(x,y,z)定义 3D 转化。
translateX(x)定义 3D 转化,仅使用用于 X 轴的值。
translateY(y)定义 3D 转化,仅使用用于 Y 轴的值。
translateZ(z)定义 3D 转化,仅使用用于 Z 轴的值。
scale3d(x,y,z)定义 3D 缩放转换。
scaleX(x)定义 3D 缩放转换,通过给定一个 X 轴的值。
scaleY(y)定义 3D 缩放转换,通过给定一个 Y 轴的值。
scaleZ(z)定义 3D 缩放转换,通过给定一个 Z 轴的值。
rotate3d(x,y,z,angle)定义 3D 旋转。
rotateX(angle)定义沿 X 轴的 3D 旋转。
rotateY(angle)定义沿 Y 轴的 3D 旋转。
rotateZ(angle)定义沿 Z 轴的 3D 旋转。
perspective(n)定义 3D 转换元素的透视视图。

1.应用在父元素上


  • 3D变换需要父元素设置样式才能保留3d的变化效果

  • 保留3D变换:transform-style: preserve-3d,默认值为flat表示不保留3D变换

  • 设置视角深度,又叫景深:perspective: 1000px 3D 元素距视图的距离,单位为px

  • 观察点位置:perspective-origin:和上面的变换中心一样,只是变成了三维的,多了一个z轴的坐标。


2.旋转

translate3d translateX translateY translateZ


  • rotate3d(x, y, z, angle):沿着x,y,z三个方向矢量值确定的坐标点旋转angle角度
  • backface-visibility 属性定义当元素旋转到背面向屏幕时是否可见,visible背面可见,hidden背面不可见
  • rotateX(angle)、rotateY(angle) 、rotateZ(angle):沿着对应轴旋转对应度数。

例子:

.item
width: 200px;
height: 300px;
border: 2px solid red;
margin: 200px auto;
background: powderblue;
transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg);

效果:这个一般要配合动画才显示好的效果。

我们要知道围绕x轴、y轴、z轴是什么样的效果?在以后就不会犯迷糊了


3.位移

translate3d translateX translateY translateZ


  • translate3d(x, y, z):必须传递三个参数
  • translateX(x):为则沿着x轴向右位移,为则沿着x轴向右位移
  • translateY(y):为则沿着y轴向下位移,为则沿着y轴向上位移
  • translateZ(z):为则沿着z轴向屏幕外位移,为则沿着z轴向屏幕内位移

4.缩放

scale3d scaleX scaleY scaleZ


  • scale3d(num, num, num):必须传递三个参数
  • scaleX(x) scaleY(y) scaleZ(z),分别代表xy轴和z轴方向缩放相应的倍数。

写在最后

我觉得2D/3D还是很好玩的,能够实现很多美观的特效,尤其是和动画结合后。3D的z轴很难演示出效果,结合动画更容易体现出来。

下一篇使用3D结合一点点动画实现下图酷炫相册效果。


共勉

你必须非常努力,才能看起来毫不费力。


推荐阅读
  • 本文介绍了腾讯最近开源的BERT推理模型TurboTransformers,该模型在推理速度上比PyTorch快1~4倍。TurboTransformers采用了分层设计的思想,通过简化问题和加速开发,实现了快速推理能力。同时,文章还探讨了PyTorch在中间层延迟和深度神经网络中存在的问题,并提出了合并计算的解决方案。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 背景应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入、跨站等攻击仍然占据着较前的位置。WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在 ... [详细]
  • macOS Big Sur全新设计大版本更新,10+个值得关注的新功能
    本文介绍了Apple发布的新一代操作系统macOS Big Sur,该系统采用全新的界面设计,包括图标、应用界面、程序坞和菜单栏等方面的变化。新系统还增加了通知中心、桌面小组件、强化的Safari浏览器以及隐私保护等多项功能。文章指出,macOS Big Sur的设计与iPadOS越来越接近,结合了去年iPadOS对鼠标的完善等功能。 ... [详细]
  • 本文介绍了互联网思维中的三个段子,涵盖了餐饮行业、淘品牌和创业企业的案例。通过这些案例,探讨了互联网思维的九大分类和十九条法则。其中包括雕爷牛腩餐厅的成功经验,三只松鼠淘品牌的包装策略以及一家创业企业的销售额增长情况。这些案例展示了互联网思维在不同领域的应用和成功之道。 ... [详细]
  • 本文整理了315道Python基础题目及答案,帮助读者检验学习成果。文章介绍了学习Python的途径、Python与其他编程语言的对比、解释型和编译型编程语言的简述、Python解释器的种类和特点、位和字节的关系、以及至少5个PEP8规范。对于想要检验自己学习成果的读者,这些题目将是一个不错的选择。请注意,答案在视频中,本文不提供答案。 ... [详细]
  • 项目需要实现弹幕,网上参考了各种方法,最后觉得transform+transition实现的效果在移动设备上性能最好,在iphone6和红米4上测试,看不到 ... [详细]
  • css div中文字位置_超赞的 CSS 阴影技巧与细节
    本文的题目是CSS阴影技巧与细节。CSS阴影,却不一定是box-shadow与filter:drop-shadow,为啥?因为使用其他属性 ... [详细]
  • 在分页时,我想让点过的页码变色.应该怎么做?比如:12345我点2跳到第2页然后2变成红色其他为蓝色 ... [详细]
  • <!DOCTYPEhtml><htmllang=en><head><metacharset=UT ... [详细]
  • 前端不规则图像点击_如何在前端开发的潮流中快速学习学好学以致用?
    大家好,我是致力于前端开发,前端设计,前端入门的前端小姐姐,今天为大家带来的前端新知识是【雪碧图和滑动门】,不 ... [详细]
  • 这篇文章主要介绍了C++实现图形界面开发Qt教程,涉及坐标函数的应用及图形界面程序设计,需要的朋友可以参考下,希望能给你带来帮助目录嵌套圆环图运行示例总结Qt是一个跨平台框架,通常 ... [详细]
  • css自适应字体样式?如果是一排文字,一个background‘red’;就搞定了。是多行的话,只有根据文字行高,用一张背景图横向重复。css样式自适应分辨率高度和宽度尽量使用百分 ... [详细]
  • pytorch Dropout过拟合的操作
    这篇文章主要介绍了pytorchDropout过拟合的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完 ... [详细]
author-avatar
phba
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有